package com.pig4cloud.pig.djjk.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 设备信息
 *
 * @author wd
 * @date 2025-06-08 20:17:42
 */
@Data
@TableName("djjk_device")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "设备信息")
public class DeviceEntity extends Model<DeviceEntity> {


	/**
	* 主键
	*/
    @TableId(type = IdType.ASSIGN_ID)
    @Schema(description="主键")
    private Long id;

	/**
	* 设备名称
	*/
    @Schema(description="设备名称")
    private String deviceName;

	/**
	* 设备编号
	*/
    @Schema(description="设备编号")
    private String deviceCode;

	/**
	* 识别模式
	*/
    @Schema(description="识别模式")
    private String ladderModel;

	/**
	* 设备ip
	*/
    @Schema(description="设备ip")
    private String deviceIp;

	/**
	* 设备端口
	*/
    @Schema(description="设备端口")
    private String devicePort;

	/**
	* 设备密码
	*/
    @Schema(description="设备密码")
    private String devicePwd;

	/**
	* 设备账号
	*/
    @Schema(description="设备账号")
    private String deviceAccount;

	/**
	 * 设备组编号
	 */
	@Schema(description="组编号")
	private String unitIndexCode;

	/**
	 * 设备场景图
	 */
	@Schema(description="图像id")
	private String picUrl;


	/**
	 * 设备经度
	 */
	@Schema(description="经度")
	private String latitude;

	/**
	 * 在线状态 0：离线 1：在线
	 */
	@Schema(description="在线状态 0：离线 1：在线")
	private Integer status;
//
//	/**
//	 * 预览地址
//	 */
//	@Schema(description="预览地址")
//	private String previewUrl;

	/**
	 * 设备纬度
	 */
	@Schema(description="纬度")
	private String longitude;

	/**
	* 设备位置
	*/
    @Schema(description="设备位置")
    private String devicePosition;

	/**
	 * 部门ID
	 */
	@Schema(description = "设备所属部门id")
	private Long deptId;

	/**
	* 创建人
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建人")
    private String createBy;

	/**
	* 创建时间
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建时间")
    private LocalDateTime createTime;

	/**
	* 更新人
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="更新人")
    private String updateBy;

	/**
	* 修改时间
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="修改时间")
    private LocalDateTime updateTime;

}
